package com.neusoft.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.neusoft.bean.Pager;
import com.neusoft.bean.UserBean;

public interface UserBeanMapper {
	/////////////////////////////////////////
	/**
	 * mybatis参数传递：多个参数
	 * 
	 * @param id2
	 * @return
	 */
	UserBean selectByPrimaryKey2(Integer id2, String name);

	/**
	 * mybatis参数传递：使用map传参
	 * 
	 * @param map
	 * @return
	 */
	UserBean selectByPrimaryKey3(Map map);

	/**
	 * mybatis参数传递：多个参数使用注解的方式进行绑定映射关系
	 * 
	 * @param id2
	 * @parm name
	 * @return
	 */
	UserBean selectByPrimaryKey4(@Param("uid")Integer id2, @Param("uname")String name);
	
	/**
	 * mybatis参数传递：对象参数和其他类型的参数使用注解的方式同时传入
	 * 
	 * @param id2
	 * @parm name
	 * @return
	 */
	UserBean selectByPrimaryKey7(@Param("uid")Integer id2, @Param("userB")UserBean userBean);
	////////////////////////////////////////
	/**
	 * 实现多对多的关联查询映射
	 * 
	 * @return 查询结果集
	 */
	List<UserBean> findMultiResult();

	/**
	 * 分页查询
	 * 
	 * @return 查询结果集
	 */
	List<UserBean> getPageList(Pager page);

	int deleteByPrimaryKey(Integer id);

	int insert(UserBean record);

	int insertSelective(UserBean record);

	/**
	 * mybatis参数传递：一个参数
	 * 
	 * @param id2
	 * @return
	 */
	UserBean selectByPrimaryKey(Integer id2);

	int updateByPrimaryKeySelective(UserBean record);

	int updateByPrimaryKey(UserBean record);
}